package com.example.mptnet.Interfaces;

import com.example.mptnet.Models.Group;
import com.example.mptnet.Models.Items;
import com.example.mptnet.Models.Mailing;
import com.example.mptnet.Models.News;
import com.example.mptnet.Models.RP;
import com.example.mptnet.Models.User;
import com.example.mptnet.Models.Users_info;

import java.util.ArrayList;

import okhttp3.MultipartBody;
import okhttp3.ResponseBody;
import retrofit2.Call;
import retrofit2.http.GET;
import retrofit2.http.Multipart;
import retrofit2.http.POST;
import retrofit2.http.Part;
import retrofit2.http.Query;

public interface API {
    @GET("users")
    Call<ArrayList<User>> GetUsers();

    @GET("users")
    Call<User> GetUser(@Query("id") String id);

    @GET("info/get")
    Call<ArrayList<Users_info>> GetInfo();

    @GET("rp")
    Call<ArrayList<RP>> GetRP(@Query("group") String group);

    @GET("items")
    Call<ArrayList<Items>> GetItems();
    @Multipart
    @POST("orders")
    Call<ResponseBody> createOrder(@Part ArrayList<MultipartBody.Part> files, @Query("id") String id, @Query("title") String title, @Query("descript") String descript, @Query("item") String item, @Query("method") String method);

    @GET("mailing")
    Call<Mailing> GetMailing(@Query("id") String id);

    @GET("groups")
    Call<ArrayList<Group>> GetGroups();

    @POST("updateinfo")
    Call<ResponseBody> updateInfo(@Query("id") String id, @Query("login") String login, @Query("password") String password, @Query("group") String group, @Query("time") String time);

    @POST("updaterole")
    Call<ResponseBody> updateRole(@Query("id") String id, @Query("item") String item);

    @GET("news")
    Call<ArrayList<News>> getNews();
}
